package com.softer.wxzj.mapper;

import com.softer.wxzj.entity.AccRateInfo;
import com.softer.wxzj.mapper.base.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import javax.validation.constraints.Size;
import java.util.List;

/**
 * @author zcz
 * @date 2019/7/29
 */
@Repository
public interface AccRateInfoMapper extends BaseMapper<AccRateInfo> {
    /**
     * 检查同银行同结息类型起始日期是否有交集
     * @param accRateInfo
     * @return
     */
    int getCheckCount(AccRateInfo accRateInfo);

    /**
     * 根据利率id查询正在使用的结息日期
     * @param rateType
     * @return
     */
    String getRateDateByRateId(String rateType);

    /**
     * 根据时间区间查询该区间内的利息集合
     * @param currentDate
     * @param lastDate
     * @return
     */
    List<AccRateInfo> getListByDateInterval(@Param("currentDate") String currentDate,@Param("lastDate") String lastDate,@Param("bankIdList")String bankIdList);

    /**
     * 根据时间区间及利息类型查询利息集合
     * @param currentDate  最大日期
     * @param lastDate      最小日期
     * @param bankIdList    银行列表
     * @param rateType      利息类型 1 活期 2 3 4... 相应的定期
     * @return
     */
    List<AccRateInfo> getListByDateAndRateType(@Param("currentDate") String currentDate,@Param("lastDate") String lastDate,@Param("bankIdList")String bankIdList,@Param("rateType") String rateType);



}